<?php
class Expediente extends AppModel {
	var $name = 'Expediente';   
	
	public $hasMany = array(
		'Denunciante'=>array(
			'className'=>'Denunciante',
			'foreignKey'=>'expediente_id'
		),
		'Denunciado'=>array(
			'className'=>'Denunciado',
			'foreignKey'=>'expediente_id'
		),
		'Afectado'=>array(
			'className'=>'Afectado',
			'foreignKey'=>'expediente_id'
		),
		'Seguimiento'=>array(
			'className'=>'Seguimiento',
			'foreignKey'=>'expediente_id'
		)		
	);
	
	public $belongsTo = array(
		'Materia'=>array(
				'className'=>'Materia',
				'foreignKey'=>'materia_id'
			),
		'Lugare'=>array(
				'className'=>'Lugare',
				'foreignKey'=>'lugar_id'
			),
		'Role' => array(
			'className' => 'Role',
			'foreignKey' => 'rol_id'
		),
		'Estado' => array(
			'className' => 'Estado',
			'foreignKey' => 'estado_id'
		),
		'Defensore' => array(
			'className' => 'Defensore',
			'foreignKey' => 'defensor_id'
		)
	);
	public function generateControl(){		
		$result = $this->query('select COALESCE( cast(max(substring(e.numero_expediente,1,3)) as integer)+1, 1) as "Expediente__numero_expediente" from expedientes.expedientes e where e.activo = true and e.ejercicio_id = '.$this->ejercicioId());
		$result = $result[0];
		$result['Expediente']['numero_control'] = str_repeat('0',3-strlen($result['Expediente']['numero_expediente'])).$result['Expediente']['numero_expediente'].'-'.$this->ejercicioId();
		return $result['Expediente']['numero_control'];
	}
}
?>